<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core">
    <ui:composition template="/empresa/core/plantilla/plantillaPrincipal.xhtml">
        <ui:define name="contenido">
            <h:form id="frmPrincipal">
                <p:panel id="pnlPrincipal" header="TAXISTA / #{gestionTaxistaMBean.titulo}" style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid columns="8" cellpadding="4">
                        <h:outputLabel value="ID" rendered="#{gestionTaxistaMBean.accion != 1}" styleClass="label"/>
                        <h:outputText value="#{gestionTaxistaMBean.taxista.id}" rendered="#{gestionTaxistaMBean.accion != 1}" styleClass="general"/>

                        <h:outputLabel for="itNombresTaxista" value="NOMBRES" styleClass="label"/>
                        <p:inputText id="itNombresTaxista" label="NOMBRES" maxlength="50"
                                     value="#{gestionTaxistaMBean.taxista.nombres}" readonly="#{gestionTaxistaMBean.accion == 3}"
                                     required="true" size="50" styleClass="txtCampoObligatorio">
                            <f:validateLength minimum="1" maximum="50"/>
                        </p:inputText>

                        <h:outputLabel for="itApPaternoTaxista" value="APELLIDO PATERNO" styleClass="label"/>
                        <p:inputText id="itApPaternoTaxista" label="APELLIDO PATERNO" maxlength="20"
                                     value="#{gestionTaxistaMBean.taxista.apPaterno}" readonly="#{gestionTaxistaMBean.accion == 3}"
                                     required="true" size="30" styleClass="txtCampoObligatorio">
                            <f:validateLength minimum="1" maximum="30"/>
                        </p:inputText>

                        <h:outputLabel for="itApMaternoTaxista" value="APELLIDO MATERNO" styleClass="label"/>
                        <p:inputText id="itApMaternoTaxista" label="APELLIDO MATERNO" maxlength="20"
                                     value="#{gestionTaxistaMBean.taxista.apMaterno}" readonly="#{gestionTaxistaMBean.accion == 3}"
                                     required="true" size="30" styleClass="txtCampoObligatorio">
                            <f:validateLength minimum="1" maximum="30"/>
                        </p:inputText>

                        <h:outputLabel for="itDniTaxista" value="DNI" styleClass="label"/>
                        <p:inputText id="itDniTaxista" label="DNI" readonly="#{gestionTaxistaMBean.accion == 3}" maxlength="20"
                                     value="#{gestionTaxistaMBean.taxista.dni}" required="true" size="20" styleClass="txtCampoObligatorio"
                                     onkeypress="return fn_validaTecla('entero',this)">
                            <f:validateLength minimum="1" maximum="20"/>
                        </p:inputText>

                        <h:outputLabel for="itFechNacTaxista" value="FECHA NACIMIENTO" styleClass="label"/>
                        <p:calendar id="itFechNacTaxista" value="#{gestionTaxistaMBean.fechaNacimiento}" label="FECHA NACIMIENTO"
                                    pattern="#{applicationMBean.formatoFecha}"  required="true" style="#{applicationMBean.estiloObligatorio}"
                                    disabled="#{gestionTaxistaMBean.accion == 3}">                            
                        </p:calendar>

                        <h:outputLabel for="itDireccionTaxista" value="DIRECCIÓN" styleClass="label"/>
                        <p:inputText id="itDireccionTaxista" label="DIRECCIÓN" maxlength="100"
                                     value="#{gestionTaxistaMBean.taxista.direccion}" readonly="#{gestionTaxistaMBean.accion == 3}"
                                     required="true" size="60" styleClass="txtCampoObligatorio">
                            <f:validateLength minimum="1" maximum="100"/>
                        </p:inputText>

                        <h:outputLabel for="itTelTaxista" value="TELÉFONO" styleClass="label"/>
                        <p:inputText id="itTelTaxista" label="TELÉFONO" readonly="#{gestionTaxistaMBean.accion == 3}" maxlength="30"
                                     value="#{gestionTaxistaMBean.taxista.telefono}" required="true" size="20" styleClass="txtCampoObligatorio"
                                     onkeypress="return fn_validaTecla('entero',this)">
                            <f:validateLength minimum="1" maximum="30"/>
                        </p:inputText>

                        <h:outputLabel for="itEmailLabTaxista" value="E-MAIL LABORAL" styleClass="label"/>
                        <p:inputText id="itEmailLabTaxista" label="E-MAIL LABORAL" maxlength="50"
                                     value="#{gestionTaxistaMBean.taxista.emailLaboral}" readonly="#{gestionTaxistaMBean.accion == 3}"
                                     required="true" size="60" styleClass="txtCampoObligatorio">
                            <f:validateLength minimum="1" maximum="50"/>
                        </p:inputText>

                        <h:outputLabel for="itEmailPerTaxista" value="E-MAIL PERSONAL" styleClass="label"/>
                        <p:inputText id="itEmailPerTaxista" label="E-MAIL PERSONAL" maxlength="50"
                                     value="#{gestionTaxistaMBean.taxista.emailPersonal}" readonly="#{gestionTaxistaMBean.accion == 3}"
                                     required="true" size="60" styleClass="txtCampoObligatorio">
                            <f:validateLength minimum="1" maximum="50"/>
                        </p:inputText>

                        <h:outputLabel for="itSexoTaxista" value="SEXO" styleClass="label"/>
                        <p:selectOneMenu id="itSexoTaxista" value="#{gestionTaxistaMBean.taxista.sexo}" style="#{applicationMBean.estiloObligatorio}"
                                         disabled="#{gestionTaxistaMBean.accion == 3}">
                            <f:selectItems value="#{gestionTaxistaMBean.siEstadosSexo}"/>
                        </p:selectOneMenu>

                        <h:outputLabel for="itNroBreveteTaxista" value="NÚMERO BREVETE" styleClass="label"/>
                        <p:inputText id="itNroBreveteTaxista" label="NÚMERO BREVETE" readonly="#{gestionTaxistaMBean.accion == 3}" maxlength="30"
                                     value="#{gestionTaxistaMBean.taxista.nroBrevete}" required="true" size="20" styleClass="txtCampoObligatorio"
                                     onkeypress="return fn_validaTecla('entero', this)">
                            <f:validateLength minimum="1" maximum="30"/>
                        </p:inputText>

                        <h:outputLabel for="itCantSerTaxista" value="CANTIDAD SERVICIOS" styleClass="label"/>
                        <h:outputText id="itCantSerTaxista" value="#{gestionTaxistaMBean.taxista.cantServicios}" styleClass="general"/>

                        <h:outputLabel for="itCantRecTaxista" value="CANTIDAD RECLAMOS" styleClass="label"/>
                        <h:outputText id="itCantRecTaxista" value="#{gestionTaxistaMBean.taxista.cantReclamos}" styleClass="general"/>

                        <h:outputLabel for="itCantAutTaxista" value="CANTIDAD AUTOS" styleClass="label"/>
                        <h:outputText id="itCantAutTaxista" value="#{gestionTaxistaMBean.taxista.cantAutos}" styleClass="general"/>

                        <h:outputLabel for="itFechRegTaxista" value="FECHA REGISTRO" styleClass="label"/>
                        <h:outputText id="itFechRegTaxista" value="#{gestionTaxistaMBean.taxista.fechaRegistro}" styleClass="label">
                            <f:convertDateTime pattern="#{applicationMBean.formatoFechaHora}"  timeZone="#{applicationMBean.timeZone}"/>
                        </h:outputText>

                        <h:outputLabel for="itEstadoTaxista" value="ESTADO" styleClass="label"/>
                        <h:outputText id="itEstadoTaxista" value="#{gestionTaxistaMBean.taxista.estadoTexto}" styleClass="label"/>
                    </h:panelGrid>

                    <f:facet name="footer">
                        <p:commandButton title="GUARDAR" ajax="false" icon="ui-icon ui-icon-disk"
                                         rendered="#{gestionTaxistaMBean.accion != 3}" style="#{applicationMBean.estilosBtnBuscar}"
                                         value="GUARDAR" onclick="return confirm('ESTÁ SEGURO QUE DESEA REALIZAR LA OPERACIÓN');"
                                         action="#{gestionTaxistaMBean.guardar}">
                        </p:commandButton>

                        <p:commandButton title="RETROCEDER" ajax="false" icon="ui-icon ui-icon-arrowreturnthick-1-w"
                                         immediate="true" style="#{applicationMBean.estilosBtnBuscar}"
                                         value="RETROCEDER" action="#{gestionTaxistaMBean.retroceder}">
                        </p:commandButton>

                        <p:commandButton title="NUEVO" icon="ui-icon ui-icon-plus" rendered="#{gestionTaxistaMBean.taxista.id != null}"
                                         value="NUEVO" style="#{applicationMBean.estilosBtnBuscar}"
                                         ajax="false"
                                         actionListener="#{gestionTaxistaMBean.nuevo}">
                        </p:commandButton>
                    </f:facet>
                </p:panel>

                <p:panel id="pnlPrincipalDeta" header="DETALLE DEL TAXISTA" style="#{applicationMBean.estiloTitulo}" rendered="#{gestionTaxistaMBean.taxista.id != null}">
                    <h:panelGrid columns="1">
                        <h:panelGrid columns="10" cellpadding="4">
                            <p:commandButton title="NUEVO AUTO"
                                             icon="ui-icon ui-icon-plus"
                                             style="#{applicationMBean.estilosBtnBuscar}"
                                             value="NUEVO AUTO"
                                             rendered="#{gestionTaxistaMBean.accion != 3}" ajax="true"
                                             oncomplete="carDialogAuto.show()"
                                             update=":frmAuto:pgFormAuto"
                                             action="#{gestionTaxistaMBean.nuevoAuto}">
                            </p:commandButton>
                        </h:panelGrid>
                        <p:dataTable id="tblPrincipalDeta" value="#{gestionTaxistaMBean.listaAutos}" var="auto" widgetVar="widTable"
                                     rowKey="#{auto.id}" emptyMessage="NO HAY REGISTROS" styleClass="estiloPanel">
                            <p:column style="text-align:center;">
                                <h:panelGrid columns="10" cellspacing="5" styleClass="estiloPanelGrid">
                                    <p:commandButton icon="ui-icon ui-icon-search" title="VER"
                                                     action="#{gestionTaxistaMBean.verAuto}" ajax="true"
                                                     update=":frmAuto:pgFormAuto" oncomplete="carDialogAuto.show()">
                                        <f:setPropertyActionListener value="#{auto}" target="#{gestionTaxistaMBean.auto}"/>
                                    </p:commandButton>

                                    <p:commandButton icon="ui-icon ui-icon-pencil" title="EDITAR"
                                                     rendered="#{gestionTaxistaMBean.accion != 3}" ajax="true"
                                                     update=":frmAuto:pgFormAuto" action="#{gestionTaxistaMBean.editarAuto}"
                                                     oncomplete="carDialogAuto.show()">
                                        <f:setPropertyActionListener value="#{auto}" target="#{gestionTaxistaMBean.auto}"/>
                                    </p:commandButton>
                                </h:panelGrid>
                            </p:column>
                            <p:column headerText="ID" styleClass="general">
                                <h:outputText value="#{auto.id}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="MARCA" styleClass="general">
                                <h:outputText value="#{auto.marca}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="MODELO" styleClass="general">
                                <h:outputText value="#{auto.modelo}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="PLACA" styleClass="general">
                                <h:outputText value="#{auto.placa}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="AÑO FABRICACIÓN" styleClass="general">
                                <h:outputText value="#{auto.anoFabricacion}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="COLOR" styleClass="general">
                                <h:outputText value="#{auto.color}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="NÚMERO SOAT" styleClass="general">
                                <h:outputText value="#{auto.nroSoat}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="CAPACIDAD" styleClass="general">
                                <h:outputText value="#{auto.capacidad}" styleClass="general"/>
                            </p:column>
                            <p:column headerText="ESTADO" styleClass="general">
                                <h:outputText value="#{auto.estadoTexto}" styleClass="general"/>
                            </p:column>
                        </p:dataTable>
                    </h:panelGrid>
                </p:panel>
            </h:form>
            <p:dialog id="dialogAuto" header="AUTOS" widgetVar="carDialogAuto" resizable="false"
                      width="700" height="200" modal="true">
                <p:messages id="msjDialogAuto" showDetail="false" autoUpdate="true"/>
                <ui:include src="/empresa/gestion/taxistaAuto.xhtml"/>
            </p:dialog>
        </ui:define>
    </ui:composition>
</html>

